SOM-6540

来自ARM Wiki
Tangdapeng讨论 | 贡献2020年2月20日 (四) 18:15的版本 CN1
跳转至: 导航搜索

介绍

正面
  • SOM-6540的核心芯片是Hi3536, 其计算单元架构包括四核A17、单核A7。 四核A17主频1.4GHz,32KB L1 I-Cache,32KB L1 D-Cache,1MB L2 Cache。单核A7的主频为0.9GHz,32KB L1 I-Cache,32KB L1 D-Cache,128KB L2 Cache。
  • GPU方面,集成 Mali-T720 GPU,支持 OpenGL ES3.1/2.0/1.1,支持 OpenCL 1.2/1.1/1.0,支持双精度 FP64 及抗锯齿功能,三角形填充率高达 63MTris/s。
  • SOM-6540,PCB大小为82mmx 80mm,运行Linux操作系统,拥有稳定可靠的工业级性能,高品质超高清视频编解码能力、支持强大硬件加速算法、接口丰富、扩展性强,可应用神经引擎,深度学习,人工智能等领域开发,以及网络视频监控系统、高清摄像机、视频服务器、无人驾驶、医疗领域、军工等行业。

资源特性

  • CPU:HiSilicon HI3536 4xA17 + 单核A7
  • GPU:Mali-T720 GPU
  • Memory:板载内存最大容量4G,默认2GB
  • Ethernet: 通过客户自定义底板可扩展多路LAN口
  • Wireless/蓝牙:通过客户自定义底板支持扩展WIFI/BT模块
  • 4G:通过客户自定义底板可扩展MINI PCIe(WIFI/4G)
  • Audio:通过客户自定义底板可扩展Line out + Line in + MIC in + Headphone
  • Display:通过客户自定义底板可扩展支持VGA/LVDS、HDMI、CVBS接口,支持独立双显
  • Storage: 板载8/16/32GB EMMC flash或SPI Nor flash
  • SATA:通过客户自定义底板可扩展标准多路SATA接口
  • USB Host:通过客户自定义底板可扩展多路USB
  • MicroSD Slot:通过客户自定义底板可扩展
  • COM:通过客户自定义底板可扩展多路COM
  • GPIO:通过客户自定义底板可扩展多路GPIO
  • IIC:通过客户自定义底板可扩展
  • CAN: 通过客户自定义底板可扩展
  • System Control:Reset switch, Power switch
  • Temperature:Work -20 ~ 65, Storage -40 ~ 85
  • Humidity:5% ~ 95%相对湿度,无冷凝
  • PCB Size: 80 x 60 mm
  • Power Supply:3~5.25V供电
  • OS: Linux

注意

  • 相关功能均需要配合底板扩展

接口布局和尺寸

接口概览

文件:SOM-6540接口布局.jpg
SOM-6540 接口布局

机械尺寸

文件:SOM-6540尺寸.png


接口引脚定义

CN1

Pin# 信号名称 Pin# 信号名称
P1 SMB_ALERT_1V8 S1 CSI1_TX+
P2 GND S2 CSI1_TX-
P3 CSI1_CK+ S3 GND
P4 CSI1_CK- S4 RSVD0
P5 GBE1_SDP S5 CSI0_TX+
P6 GBE0_SDP S6 CAM_MCK
P7 CSI1_RX0+ S7 CSI0_TX-
P8 CSI1_RX0- S8 CSI0_CK+
P9 GND S9 CSI0_CK-
P10 CSI1_RX1+ S10 GND
P11 CSI1_RX1- S11 CSI0_RX0+
P12 GND S12 CSI0_RX0-
P13 CSI1_RX2+ S13 GND
P14 CSI1_RX2- S14 CSI0_RX1+
P15 GND S15 CSI0_RX1-
P16 CSI1_RX3+ S16 GND
P17 CSI1_RX3- S17 GBE1_MDI0+
P18 GND S18 GBE1_MDI0-
P19 GBE_MDI3- S19 GBE1_LINK100#
P20 GBE_MDI3+ S20 GBE1_MDI1+
P21 GBE_LINK100# S21 GBE1_MDI1-
P22 GBE_LINK1000# S22 GBE1_LINK1000
P23 GBE_MDI2- S23 GBE1_MDI2+
P24 GBE_MDI2+ S24 GBE1_MDI2-
P25 GBE_LINK_ACT S25 GND
P26 GBE_MDI1- S26 GBE1_MDI3+
P27 GBE_MDI1+ S27 GBE1_MDI3-
P28 GBE_CTREF S28 GBE1_CTREF
P29 GBE_MDI0- S29 PCIE_D_TX+
P30 GBE_MDI0+ S30 PCIE_D_TX-
P31 SPI0_CS1 S31 GBE1_LINK_ACT
P32 GND S32 PCIE_D_RX+
P33 SDIO_WP S33 PCIE_D_RX-
P34 SD2_CMD S34 GND
P35 SDIO_CD S35 USB4+
P36 SDIO_CK S36 USB4-
P37 SDIO_PWR_EN S37 USB3_VBUS_DET
P38 GND S38 AUDIO_MCK
P39 SDIO_D0 S39 I2S0_LRCK
P40 SDIO_D1 S40 I2S0_SDOUT
P41 SDIO_D2 S41 I2S0_SDIN
P42 SDIO_D3 S42 I2S0_CK
P43 SPI0_CS0 S43 ESPI_ALERT0
P44 SPI0_CK S44 ESPI_ALERT1
P45 SPI0_DIN S45 RSVD1
P46 SPI0_DO S46 RSVD2
P47 GND S47 GND
P48 SATA_TX+ S48 I2C_GP_CK
P49 SATA_TX- S49 I2C_GP_DAT
P50 GND S50 HDA_SYNC
P51 SATA_RX+ S51 HDA_SDO
P52 SATA_RX- S52 HDA_SDI
P53 GND S53 HDA_CK
P54 ESPI_CS0 S54 SATA_ACT
P55 ESPI_CS1 S55 USB5_EN_OC
P56 EIM_CS0 S56 ESPI_IO_2
P57 ESPI_CK S57 ESPI_IO_3
P58 ESPI_IO_1 S58 ESPI_RESET
P59 GND S59 USB5+
P60 USB0+ S60 USB5-
P61 USB0- S61 GND
P62 USB0_EN_OC S62 USB3_SSTX+
P63 USB0_VBUS_DET S63 USB3_SSTX-
P64 USB0_OTG_ID S64 GND
P65 USB1+ S65 USB3_SSRX+
P66 USB1- S66 USB3_SSRX-
P67 USB1_EN_OC S67 GND
P68 GND S68 USB3+
P69 USB2+ S69 USB3-
P70 USB2- S70 GND
P71 USB2_EN_OC S71 USB2_SSTX+
P72 RSVD3 S72 USB2_SSTX-
P73 RSVD4 S73 GND
P74 USB3_EN_OC S74 USB2_SSRX+
P75 PCIE_A_RST S75 USB2_SSRX-
P76 USB4_EN_OC S76 PCIE_B_RST
P77 RSVD5 S77 PCIE_C_RST
P78 RSVD6 S78 PCIE_C_RX+
P79 GND S79 PCIE_C_RX-
P80 PCIE_C_REFCK+ S80 GND
P81 PCIE_C_REFCK- S81 PCIE_C_TX+
P82 GND S82 PCIE_C_TX-
P83 PCIE_A_REFCK+ S83 GND
P84 PCIE_A_REFCK- S84 PCIE_B_REFCK+
P85 GND S85 PCIE_B_REFCK-
P86 PCIE_A_RX+ S86 GND
P87 PCIE_A_RX- S87 PCIE_B_RX+
P88 GND S88 PCIE_B_RX-
P89 PCIE_A_TX+ S89 GND
P90 PCIE_A_TX- S90 PCIE_B_TX+
P91 GND S91 PCIE_B_TX-
P92 S92 GND
P93 HDMI_D2- S93 DP0_LANE0+
P94 GND S94 DP0_LANE0-
P95 HDMI_D1+ S95 DP0_AUX_SEL
P96 HDMI_D1- S96 DP0_LANE1+
P97 GND S97 DP0_LANE1-
P98 HDMI_D0+ S98 DP0_HPD
P99 HDMI_D0- S99 DP0_LANE2+
P100 GND S100 DP0_LANE2-
P101 HDMI_CK+ S101 GND
P102 HDMI_CK- S102 DISP0_DAT8
P103 GND S103 DISP0_DAT9
P104 HDMI_HPD S104 DISP0_DAT10
P105 HDMI_CTRL_CK S105 DISP0_DAT11
P106 HDMI_CTRL_DAT S106 DISP0_DAT12
P107 DP1_AUX_SEL S107 DISP0_DAT13
P108 GPIO0 S108 DISP0_DAT14
P109 GPIO1 S109 DISP0_DAT15
P110 GPIO2 S110 GND
P111 GPIO3 S111 DISP0_DAT16
P112 GPIO4 S112 DISP0_DAT17
P113 GPIO5 S113 DISP0_DAT18
P114 GPIO6 S114 DISP0_DAT19
P115 GPIO7 S115 DISP0_DAT20
P116 GPIO8 S116 DISP0_DAT21
P117 GPIO9 S117 DISP0_DAT22
P118 GPIO10 S118 DISP0_DAT23
P119 GPIO11 S119 GND
P120 GND S120 DI0_PIN15
P121 I2C_PM_CK S121 DI0_PIN3
P122 I2C_PM_DAT S122 DI0_PIN2
P123 BOOT_SEL0 S123 DI0_DISP_CLK
P124 BOOT_SEL1 S124 GND
P125 BOOT_SEL2 S125 LVDS0_TX0_P
P126 RESET_OUT S126 LVDS0_TX0_N
P127 RESET_IN S127 EIM_D16
P128 POWER_BTN S128 LVDS0_TX1_P
P129 SER0_TX S129 LVDS0_TX1_N
P130 SER0_RX S130 GND
P131 SER0_RTS S131 LVDS0_TX2_P
P132 SER0_CTS S132 LVDS0_TX2_N
P133 GND S133 EIM_A25
P134 SER1_TX S134 LVDS0_CLK_P
P135 SER1_RX S135 LVDS0_CLK_N
P136 SER2_TX S136 GND
P137 SER2_RX S137 LVDS0_TX3_P
P138 SER2_RTS S138 LVDS0_TX3_N
P139 SER2_CTS S139 KEY_COL3
P140 SER3_TX S140 KEY_ROW3
P141 SER3_RX S141 GPIO_1
P142 GND S142 NC
P143 CAN0_TX S143 GND
P144 CAN0_RX S144 NC
P145 CAN1_TX S145 GPIO_9
P146 CAN1_RX S146 GPIO_4
P147 VDD_IN S147 VDD_RTC
P148 VDD_IN S148 GPIO_17
P149 VDD_IN S149 GPIO_19
P150 VDD_IN S150 KEY_ROW2
P151 VDD_IN S151 KEY_ROW1
P152 VDD_IN S152 KEY_COL1
P153 VDD_IN S153
P154 VDD_IN S154 KEY_COL0
P155 VDD_IN S155
P156 VDD_IN S156
S157
S158


快速入门

下载

  • 镜像 下载
  • sample 下载
  • 烧录工具 下载
  • 交叉编译工具下载

烧录方法

HiTool 烧录方法

适用场景

  • 适用于一键烧写所有程序镜像到单板flash 上的场景、单板已有 boot 可按地址烧写其他程序镜像到单板 flash 上的场景,以及在空板上只烧写 boot 到单板 flash 上的场景。
  • 本文只介绍 <eMMC烧录>方法。

环境部署

HiBurn 工具烧写的环境准备如下:
  • 步骤 1. PC 与单板之间连接好串口、网线,且因工具烧写需要涉及到与 bootrom 交互,故单板硬件上 bootrom_sel 需要设置为 1,从 bootrom 启动。
  • 步骤 2. 把 HiTool-BVT-X.X.X.zip 拷贝到 PC 上(PC 要求安装 Win7、XP 操作系统)的某个本地硬盘。
  • 步骤 3. 解压 HiTool-BVT-X.X.X.zip,双击工具目录下的 HiTool.exe,打开 HiTool 工具,如图 1-1 所示。
图1-1 从 HiTool 工具目录打开 HiTool 工具
  • 步骤 4. 选择单板对应的芯片型号,如图 1-2 所示。
图1-2 选择单板对应的芯片型号
  • 步骤 5. 在欢迎页中选择 HiBurn 工具, 如图 1-3 所示。
图1-3 选择 HiBurn 工具
  • 步骤 6. 参数配置,选择连接单板所用的串口,选择 PC 端使用的网络 IP 地址,配置好单板的MAC 地址、IP 地址、子网掩码以及网关,配置如图 1-4 所示。
图1-4 参数设置

eMMC烧录

适用场景
适用场景如下:只适用于 eMMC 烧写,不管单板上有没有 boot 都适用,可实现一键烧写所有镜像。
烧写步骤
具体烧写步骤如下:
  • 步骤 1. 切换到“烧写 eMMC”页签,如图 5-1 所示。
图5-1 eMMC 烧写界面
说明:
切换“默认采用 XML 所在路径”的勾选状态,若勾选,则优先在 XML 路径下查找该分区文件。若不勾选,则优先采用绝对路径查找该文件,若找不到,再尝试以在 XML 所在目录下查找该文件,该状态默认被勾选。
XML 是一个配置文件用于保存分区表信息的,可以将编辑的分区表使用工具上的 Save 按钮保存成一个 XML 文件,下次打开工具时,将 XML 导入进来,分区表信息就直接加载进来。
  • 步骤 2. 配置单板分区信息,点击“浏览”,可选择已设置好的分区表信息,载入工具中,如图 5-2 所示界面。
图5-2 配置单板分区信息
  • 步骤 3. 准备单板环境。连接单板的串口和网口,如果单板处于通电状态,给单板下电 。
  • 步骤 4. 烧写单板,点击烧写按钮【Burn】。
  • 步骤 5. 给单板上电,进入烧写过程,等待烧写完成。
  • 烧写过程的信息会在控制台中显示。
  • 串口选择是否正确。
  • IP 地址设置是否正确,地址是否被占用。
  • 是否有短接单板上的自举跳线。
  • 步骤 6. 烧写完成,连接终端工具,重启单板。

例程环境搭建

  • 主板默认已搭建好例程运行环境。

DEMO使用

sample_audio(音频相关)

 1 root@root:/mpp/sample/audio# ./sample_audio
 2 
 3 
 4 /************************************/
 5 please choose the case which you want to run:
 6         0:  start AI to AO loop
 7         1:  send audio frame to AENC channel from AI, save them
 8         2:  read audio stream from file, decode and send AO
 9         3:  start AI(AIC31) to AO(Hdmi) loop
10         q:  quit whole audio sample
11 
12 sample command:
shell 说明:
1.  运行sample_audio 音频 (输入/输出/编码/解码)样例
5.  选择要运行的选项
6.  0) 音频从输入到输出 (话筒功能)
7.  1) 采集音频输入帧发送到编码通道,保存文件 (录音功能)
8.  2) 从文件读取音频流,解码然后发送到输出 (解码播放功能)
9.  3) 采集音频输入到HDMI中音频输出 (HDMI设备播放音频功能)
10.  q) 退出整个音频示例
12.  选项输入框

usbCamTest(usb摄像头)

1 root@root:/mpp/sample/ght_usb_camera_vdec_vo# ./usbCamTest
shell 说明:
1.  运行usb摄像头样例程序,实现usb摄像头获取264的码流 然后解码在hdmi显示。

其他功能说明

nfs配置和网络

1,pc机安装nfs服务,安装前可以先学习下这个网站内容:https://blog.csdn.net/iamplane/article/details/53912176
pc机操作示例如下:
1 $ sudo apt-get install nfs-kernel-server
2 $ sudo apt-get install nfs-common​
3 $ sudo gedit /etc/exports #添加下面内容/home/nfs *(rw,sync,no_root_squash,no_subtree_check)
4 $ sudo /etc/init.d/rpcbind restart #重启rpcbind
5 $ sudo /etc/init.d/nfs-kernel-server restart #重启nfs服务
6 $ showmount -e #使用此命令后有”/home/nfs“则安装成功
2,设备debug串口链接到PC机上,串口参数是115200 8N1(详细见 调试串口接口定义
在设备串口终端上,通过下面命令配置IP eth0:
1 ~ # ifconfig eth0 192.168.8.189
在设备串口终端,通过下面命令挂载PC机的/home/nfs目录到设备的/mnt/nfs目录(192.168.8.xx是PC机的IP,和设备eth0的IP处在同一网段即可):
1 ~ # mount -t nfs -o nolock -o tcp 192.168.8.xx:/home/nfs /mnt/nfs
2 ~ # cd /mnt/nfs
3 ~ # ls #查看PC机共享的内容
这样PC机共享出/home/nfs目录后,在设备的/mnt/nfs目录就可以访问PC机/home/nfs目录的内容。

gpio使用

16路DI电平由外部控制,4路DO。此处示例设置4路DO的电平。
 1 root@root:~# cat /sys/class/gpio/gpionl1/value       #查看gpionl1脚的输出电平
 2 1                                                    #高电平
 3 root@root:~# echo 0 > /sys/class/gpio/gpionl2/value  #把gpionl1脚的输出电平拉低
 4 root@root:~# cat /sys/class/gpio/gpionl1/value       #查看gpionl1脚的输出电平
 5 0                                                    #低电平
 6 root@root:~# cat /sys/class/gpio/gpionl2/value       #查看gpionl2脚的输出电平
 7 1                                                    #高电平
 8 root@root:~# echo 0 > /sys/class/gpio/gpionl2/value  #把gpionl2脚的输出电平拉低
 9 root@root:~# cat /sys/class/gpio/gpionl2/value       #查看gpionl2脚的输出电平
10 0                                                    #低电平

USB口U盘挂载

将U盘插入USB口,会有很多提示信息,其中比较有用的标识是sda: sda1信息(第一个U盘,后面以此是sdb1,sdc1...),然后通过下面命令进行U盘挂载,进入/mnt/usb目录可以看到U盘内容。
1 ~ # mount -t vfat /dev/sda1 /mnt/usb #假设看到的提示信息是sda1
2 ~ # cd /mnt/usb
3 ~ # ls #查看U盘内容

TF口使用

将TF卡插入到设备TF卡槽内,重启系统,在终端会有mmc1: new high speed SD card at address 0001提示。使用下面命令进行挂载(mmcblk0是系统emmc使用,TF卡为mmcblk1),在 /mnt/mmc目录下可以看到TF卡里面的内容。
1 # mount -t vfat /dev/mmcblk1p1 /mnt/mmc
2 # cd /mnt/mmc
3 # ls #查看TF卡内容

COM口使用

一个COM232,一个COM485,两个debug调试串口,COM0_DB为主系统的调试口COM1_DB为从系统的调试口,引脚定义详见串口接口定义和J46接口定义
软件上COM232口和COM485对应/dev/ttyAMA1和/dev/ttyAMA2,debug串口对应的设备是/dev/ttyS000。
调试串口默认参数是115200 8 N 1。