当前位置:网站首页>PCIe Core Configuration
PCIe Core Configuration
2022-08-05 00:44:00 【jjinl】
This section mainly introduces PCIe configuration under lattice diamond
1. First create a new project
Open the diamond software, select File-->New-->Project, and fill in the project name and project path in the pop-up dialog box

2. Select the device, the development board model LFE5UM5G-45F-8BG381IES

3. Select synplify pro for the synthesis tool.The lattice documentation requires PCIe IPcore to use synplify Pro as a synthesis tool

4. After the project is established, the project is an empty project at this time, open Clarity Designer.Check to create a new clarity Design, and fill in the design name. Do not select the Create a single sbx component option.I haven't figured out how to use this option yet.Otherwise, the PCIe IPcore will not be displayed later.

5. Select the Lattice IP Server in Clarity Designer, and double-click the IP option to pull data from the Lattice server, which requires networking.

6. After double-clicking, start downloading data

7. Expand the list and select PCIe

8. Right-click and select Install

9. Follow the prompts to select the installation path, and confirm to start the installation.After installation is complete.Double-click pcie, as shown below

10. Fill in the instance name in the pop-up pcie 5g endpoint, here we call it pcie_x1, click customize

11. In the pop-up PCIe configuration options, only simple modification.Most of them are kept by default, because most of the options are not yet fully understood.Select Enable BAR0 in configuration space-1, fill in FFFFF000, continue to scroll to the bottom, and check Load IDs from ports.As shown below


Note: FFFFF000 of bar0: indicates the space attribute
bit0: 1'b0: Mem space 1'b1: IO space
bit[2:1] : 2'b00: 32-bit mem space 2'b10: 64-bit mem space
bit3: mem space prefetch bit.1'b0: non-prefetch 1'b1: prefetch
bit[31:4]: Space size.32'hFFFFF000: Indicates the space size 0xFFF, which is 4KBytes
The size of the space read by the host computer is to read the value of bar0 and the number of binary 0s from the lower digit (the lower 4 digits are 0 by default)
The Load IDs option is to put the manufacturer, device and other IDs on the instantiated port, and directly pass the value when calling IPcore
After clicking configure, click the close button, and the synthesizer starts to generate PCIe IPcore.It takes a few minutes to generate the IPcore.Wait for the build to complete.Then close Clarity Designer and save it, then pcie_x1.sbx will be added to the project.

12. Double-click the sbx file, reopen the clarity designer, add the clock module, select the extref module as shown below and fill in the example name

13. Select configure in the pop-up dialog box, then select close to close the dialog box, and wait for the synthesis tool to generate the reference clock IPcore

14. After IPcore is generated, open the Planner tab to see

15. Zoom in on the DCU area in the lower right corner of the above figure. Enlargement method: hold down the ctrl button, scroll the middle mouse button, drag extref to the extref area of the dcu, drag Lane0 to the ch0 area of the DCU.Drag and drop method: hold down the left button of the mouse and move.

16. After the drag is correct, double-click the Ch0 area to pop up the DCU settings, set the reference clock to DCU0_EXTREF. Then click the OK button

17. At this point, the PCIe IPcore configuration steps are completed, then start to generate IPcore, click the save button, and then click Generate to generate IPcore

Wait a few minutes for the PCIe IPcore configuration to complete.Afterwards, the pcie.v file and the instantiated template will be generated in the project directory

In the next section, analyze the pcie.v file
边栏推荐
- 2022牛客多校第三场 J题 Journey
- 5.PCIe官方示例
- Countdown to 1 day!From August 2nd to 4th, I will talk with you about open source and employment!
- 动态规划/背包问题总结/小结——01背包、完全背包
- PCIe 核配置
- 软件测试面试题:BIOS, Fat, IDE, Sata, SCSI, Ntfs windows NT?
- 软件测试面试题:做好测试计划的关键是什么?
- Pytorch使用和技巧
- matlab中rcosdesign函数升余弦滚降成型滤波器
- Software testing interview questions: What stages should a complete set of tests consist of?
猜你喜欢

OPENWIFI实践1:下载并编译SDRPi的HDL源码

matlab 采用描点法进行数据模拟和仿真

《WEB安全渗透测试》(28)Burp Collaborator-dnslog外带技术

oracle创建用户

内存取证系列1

MongoDB construction and basic operations

【FreeRTOS】FreeRTOS与stm32内置堆栈的占用情况

4. PCIe 接口时序

could not build server_names_hash, you should increase server_names_hash_bucket_size: 32

ora-01105 ora-03175
随机推荐
node使用redis
【无标题】
gorm joint table query - actual combat
2021年11月网络规划设计师上午题知识点(上)
PCIe 核配置
2022牛客多校训练第二场 L题 Link with Level Editor I
JVM类加载简介
leetcode: 267. Palindromic permutations II
Inter-process communication and inter-thread communication
Lattice PCIe 学习 1
Software Testing Interview Questions: What's the Key to a Good Test Plan?
tiup telemetry
2022牛客多校训练第二场 H题 Take the Elevator
2022 Nioke Multi-School Training Session H Question H Take the Elevator
canvas 高斯模糊效果
SV 类的虚方法 多态
软件测试面试题:您如何看待软件过程改进?在您曾经工作过的企业中,是否有一些需要改进的东西呢?您期望的理想的测试人员的工作环境是怎样的?
2022 Nioke Multi-School Training Session 2 J Question Link with Arithmetic Progression
Matlab uses plotting method for data simulation and simulation
Software Testing Interview Questions: What's the Difference Between Manual Testing and Automated Testing?