[X]关闭

米联客(MSXBO)MZ7035FC-NVME SSD测评

文档创建者:uisrc
浏览次数:5179
最后更新:2020-04-01
1、概述
NVM Express(NVMe),或称非易失性内存主机控制器接口规范(Non-Volatile Memory express),是一个逻辑设备接口规范。他是与AHCI类似的、基于设备逻辑接口的总线传输协议规范(相当于通讯协议中的应用层),用于访问通过PCI-Express(PCIe)总线附加的非易失性内存介质,虽然理论上不一定要求 PCIe 总线协议。
此规范目的在于充分利用PCI-E通道的低延时以及并行性,还有当代处理器、平台与应用的并行性,在可控制的存储成本下,极大的提升固态硬盘的读写性能,降低由于AHCI接口带来的高延时,彻底解放SATA时代固态硬盘的极致性能。
       基于 米联客 MZ7035核心板我们设计了一款底板支持PCIE ROOT( MZ7035FC底板),用于NVME测试。
2、搭建FPGA BD工程
米联客(MSXBO)MZ7035FC-PCIE-ROOT测评-1.jpg
3、设置PCIE核
主要对PCIE核的设置说明,其他的不再说明
米联客(MSXBO)MZ7035FC-PCIE-ROOT测评-2.jpg
米联客(MSXBO)MZ7035FC-PCIE-ROOT测评-3.jpg
米联客(MSXBO)MZ7035FC-PCIE-ROOT测评-4.jpg
米联客(MSXBO)MZ7035FC-PCIE-ROOT测评-5.jpg
米联客(MSXBO)MZ7035FC-PCIE-ROOT测评-6.jpg
米联客(MSXBO)MZ7035FC-PCIE-ROOT测评-7.jpg
米联客(MSXBO)MZ7035FC-PCIE-ROOT测评-8.jpg
米联客(MSXBO)MZ7035FC-PCIE-ROOT测评-9.jpg
4、XDC约束文件
米联客(MSXBO)MZ7035FC-PCIE-ROOT测评-10.jpg
5、导入到SDK
米联客(MSXBO)MZ7035FC-PCIE-ROOT测评-11.jpg

5、配置kernel
1)、在路径osrc-lab/scripts/执行source settings64.sh
2)、在路径osrc-lab/sources/kernel/ 执行make menuconfig ARCH=arm
3)、配置NVME驱动,配置好后报存退出
米联客(MSXBO)MZ7035FC-PCIE-ROOT测评-12.jpg
3)、在路径osrc-lab/scripts/kernel 执行save_ kernel _config.sh保存配置。
6、修改设备树
/ {
         amba_pl: amba_pl {
                   #address-cells = <1>;
                   #size-cells = <1>;
                   compatible = "simple-bus";
                   ranges ;
                   axi_pcie_0: axi-pcie@40000000 {
                            #address-cells = <3>;
                            #interrupt-cells = <1>;
                            #size-cells = <2>;
                            clock-names = "REFCLK";
                            clocks = <&misc_clk_0>;
                            compatible = "xlnx,axi-pcie-2.9", "xlnx,axi-pcie-host-1.00.a";
                            device_type = "pci";
                            interrupt-map = <0 0 0 1 &pcie_intc_0 1>, <0 0 0 2 &pcie_intc_0 2>, <0 0 0 3 &pcie_intc_0 3>, <0 0 0 4 &pcie_intc_0 4>;
                            interrupt-map-mask = <0 0 0 7>;
                            interrupt-names = "interrupt_out";
                            interrupt-parent = <&intc>;
                            interrupts = <0 29 4>;
                            ranges = <0x02000000 0x00000000 0x80000000 0x80000000 0x00000000 0x04000000>;
                            reg = <0x40000000 0x2000000>;
                            pcie_intc_0: interrupt-controller {
                                     #address-cells = <0>;
                                     #interrupt-cells = <1>;
                                     interrupt-controller ;
                            };
                   };
                   misc_clk_0: misc_clk_0 {
                            #clock-cells = <0>;
                            clock-frequency = <100000000>;
                            compatible = "fixed-clock";
                   };
         };
};
7、编译并且部署系统到TF卡进行测试
1)、get_hw_description.sh
2)、make_uboot.sh
3)、make_kernel.sh
4)、create_image.sh
插入TF卡
5)、make_parted.sh
6)、deploy_image.sh
完成卡的制作
但是需要对uEnv.txt修改增加cma=128M


7、连接PCIE-NVME卡


8、测试
弹出Tf卡一定不要带电插拔,把TF卡插入到开发板,上电启动。
1)、查看设备节点
输入名令: cd /dev
           ls
可以看到设备节点
2 )、查看磁盘
输入命令: fdisk -l
即可看到磁盘的大小
3 )、格式化SSD
       fdisk /dev/nvme0n1
4 )、测试读速度
       time dd if=/dev/zero of=/dev/nvme0n1 bs=2M count=1024
5 )、测试写速度
       time dd if=/dev/nvme0n1 of=/dev/null bs=2M count=1024
米联客(MSXBO)MZ7035FC-PCIE-ROOT测评-13.jpg


发表评论已发布 2

lost_shadow

发表于 2019-9-3 10:10:04 | 显示全部楼层

转接板淘宝有卖么

I'mpossible

发表于 2020-4-1 16:23:27 | 显示全部楼层

感谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则