概述
一.介绍
ADAS(Advanced Driver Assistance Systems)高级辅助驾驶,是利用安装于车上的各式各样的传感器, 在第一时间收集车内外的环境数据, 进行静、动态物体的辨识、侦测与追踪等技术上的处理, 从而能够让驾驶者在最快的时间察觉可能发生的危险, 以引起注意和提高安全性的主动安全技术。
二.s32v234介绍
S32V234是nxp公司第二代视频处理器系列,基于64位ARM Cortex-A53CPU,具有高达1000MHz 四核ARM Cortex-A53,集成了32 KB/32 KB I-/D- L1高速缓存,NEON MPE协处理器,双精度FPU,带2 CPU和256KB L2缓存的2集群,存储器管理单元,GIC中断控制器,提供ISP,功能强大的3D GPU,两个APEX-2可视加速器,支持SafeAssure™安全性,具有汽车级的可靠性,功能安全性,支持汽车和工业自动化,适用于汽车ADAS,NCAP前置摄像头,物体检测和识别,车载全景可视系统以及机器学习和传感器融合应用。
s32v234的主要特性:
• ARM Cortex-A53, 64-bit CPU
– Up to 1000 MHz Quad ARM Cortex-A53
– 32 KB/32 KB I-/D- L1 Cache
– NEON MPE co-processor
– Dual precision FPU
– 2 clusters with 2 CPUs and 256 KB L2 cache each
– Memory Management Unit
– GIC Interrupt Controller
– ECC/parity error support for its memories
– Generic timers
– Fault encapsulation by hardware for redundantexecuted application software on multiple corecluster
• ARM Cortex-M4, 32-bit CPU
– Up to 133 MHz
– 16 KB/16 KB I-/D- L1 Cache
– 32+32 KB tightly coupled memory (TCM)
– ECC/parity support for its memories
• Clocks
– Phase Locked Loops (PLLs)
– 1 external crystal oscillator (FXOSC)
– 1 FIRC oscillator
• System protection and power management features
– Flexible run modes to consume low power based onapplication needs
– Peripheral clock enable register can disable clocks tounused modules, thereby reducing currents
– Power gating of unused A53 cores and GPU
– Low and high voltage warning and detect
– Hardware CRC module to support fast cyclicredundancy checks (CRC)
– 120-bit unique chip identifier
– Hardware watchdog
– eDMA controller with 32 channels (withDMAMUX)
– Extended Resource Domain Controller
• Safety concept
– ISO 26262, ASIL level target
– Measures to detect faults in memory and logic
– Measures to detect single point and latent faults
– Quantitative out of context analysis of functionalsafety (FMEDA) tailored to application specifics
– Safety manual and FMEDA report available
• Security
– CSE with 16 KB of on-chip Secure RAM and ROM.
– ARM TrustZone (TZ) architecture support
– Boot from NOR flash with AES-128 (CTR)
– On-Chip One-Time Programmable elementController (OCOTP_CTRL) with on chip electricalfuse array.
– System JTAG Controller (SJC)
• Debug functionality
– Standard JTAG and Compact JTAG
– 16-bit Trace port, Serial Wire Output port
• Timers
– General purpose timers (FTM)
– Two Periodic Interrupt Timer (PIT)
– IEEE 1588 Timers (part of Ethernet Subsystem)
• Analog
– 1x 12-bit 1.8 V SAR ADC with self-test
• Communications
– UART(w/ LIN2.1l)
– Serial peripheral interface (SPI)
– I2C blocks
– PCI express 2.0 with endpoint and root complexsupport
– LFAST serial link
– 1 GBit Ethernet with PTP IEEE 1588
– FD-CAN
– FlexRay Dual Channel, Version 2.1 RevA
• Memory interfaces
– 32-bit DRAM Controller with support for LPDDR2/DDR3/DDR3L - Up to 1066 MHz data rate with ECC (SEC-DEDTED)triple errror detection support for subregion
– QuadSPI supporting Execute-In-Place (XIP)
– Boot flash fault detection and correction using two-dimensional parity.
– Triple fault detection and single fault correction scheme for external DDR-RAM including address/page fault detection.
• Video input interfaces, Image processing, graphics processing, display
– Display Control Unit (2D-ACE) with 24-bit RGB, GPU frame buffer decoding
– GPU GC3000 with frame buffer compression
– 2x VIU (Video interface unit) for camera input
– 2x MIPICSI2 with four lanes for camera input (support 1080 pixel @ 30 fps)
– Image signal processor (ISP), supporting 2x1 or 1x2 megapixel @ 30 fps and 4x2 megapixel for subset of functions(exposure control, gamma correction)
– 2x APEX2-CL Image cognition processor supporting OpenCL 1.2. APEX-642CL comprises two Array Processing Unit
(APU) cores configurable as single SIMD engine with 64 16-bit Computational Units (CU), or configurable as two coreMIMD engines with 32 16-bit CUs each.
– CUs are comprised of four Functional Units: 16-bit Multiplier, Load Store Unit, ALU, and Shifter
– JPEG video decoder (8/12-bit)
– H.264 video decoder (8/10/12-bit), High-intra and constrained baseline formats
– H.264 video encode (8/10/12-bit), High-intra only
– Fast DMA for data transfers between DRAM and System RAM with CRC
• Human-Machine Interface (HMI)
– GPIO pins with interrupt support, DMA request capability, digital glitch filter
– Configurable slew rate and drive strength on all output pins
• System RAM
– 4 MB On-Chip System RAM with ECC
三.官方源码编译教程
3.1 Download the Yocto Project Environment into your directory:
1. mkdir fsl-auto-yocto-bsp
2. cd fsl-auto-yocto-bsp
3. repo init -u https://source.codeaurora.org/external/autobsps32/auto_yocto_bsp -b hotfix/bsp17.0.hf1 -m adas.xml
4. repo sync
Note:如果你的机器没有安装repo,那么请遵循下面的步骤:
1. mkdir ~/bin
2. curl http://php.webtutor.pl/en/wp-content/uploads/2011/09/repo> ~/bin/repo
3. PATH=~/bin:$PATH
4. chmod a+x ~/bin/repo
打开repo将改为:
#REPO_URL='git://codeaurora.org/tools/repo.git'
REPO_URL = 'https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/'
3.2Create build folder:
1../sources/meta-alb/scripts/host-prepare.sh
2,source nxp-setup-alb.sh -m s32v234sbc
运行完以上步骤:你将会如下目录:
ccion@ubuntu:~/ccion/fsl-auto-yocto-bsp/build_s32v234sbc$ ls
bitbake-cookerdaemon.log
cache
conf
SOURCE_THIS
tmp
然后修改此目录下面的conf/local.conf.j将vsdk加入yocto系统。
FSL_LOCAL_MIRROR = "file:///your path/fsl_local_mirror"
LICENSE_FLAGS_WHITELIST_append = " commercial "
操作完以上步骤后,请在nxp官网下载VisionSDK_S32V2xx_RTM_xxx.bin。网站:https://www.nxp.com/cn/search?keyword=s32v234#
bitbake fsl-image-vsdk
接下来就是漫长的等待编译,由于很多源码会从网上下载,所以第一次编译需要很长时间,大概12小时。编译完后,可以将downloads目录下的源码包保存。
ccion@ubuntu:~/ccion/code/fsl-auto-yocto-bsp/build_s32v234sbc/tmp/deploy$ ls
images
licenses
rpm
编完后,如上目录images就是我们所需要的镜像。
ccion@ubuntu:~/ccion/code/fsl-auto-yocto-bsp/build_s32v234sbc/tmp/work/aarch64-fsl-linux$ ls
acl
boost
flac
inputproto
libical
libxft
nfs-utils
setserial
alsa-lib
bridge-utils
flex
iozone3
libice
libxi
nspr
shadow
alsa-plugins
busybox
fontconfig
iperf3
libidn
libxml2
ocv
shadow-sysroot
apex-add
bzip2
freetype
iproute2
libjpeg-turbo
libxrandr
ofono
shared-mime-info
apexcv-basic
cairo
gawk
iptables
libmnl
libxrender
openssh
speexdsp
apexcv-orb
canutils
gcc
iputils
libmpc
libxshmfence
openssl
sqlite3
apexcv-remap
cnn-classifier
gcc-runtime
isl
libnfsidmap
libxt
opkg-utils
stat
apexcv-simple
consolekit
gconf
isp-h264dec-single-stream
libnl
libxtst
pango
strace
apex-downsample-upsample-cv
coreutils
gd
isp-jpeg-4stream
libnss-mdns
libxv
pciutils
strongswan
apex-emulation-test
cracklib
gdb
isp-ov10635-viu-dcu
libogg
libxxf86vm
pedestrian-detection
sysfsutils
apex-face-detection-cv
cryptodev-linux
gdbm
isp-ov10640-quad
libpam
lighttpd
pedestrian-detection-aggcf
sysstat
apex-fast9-cv
curl
gdk-pixbuf
isp-sonyimx224-csi-dcu
libpcap
linux-libc-headers
perl
sysvinit
apex-gauss5x5-cv
damageproto
gettext
isp-sonyimx224-default
libpciaccess
lmbench
pixman
tcpdump
apex-histogram-cv
db
giflib
isp-sonyimx224-h264enc
libpcre
lmsensors
pkgconfig
tcpreplay
apex-indirect-input-cv
dbus
glib-2.0
isp-sonyimx224-rgb-yuv-gs8
libpng
lrzsz
polkit
tcp-wrappers
apex-integral-image-cv
dbus-glib
glibc
isp-stereo-apexbm
libpthread-stubs
lzo
presentproto
tiff
apex-isp-face-detection-cv
demos-data
glibc-initial
isp-stereo-calib
librsvg
m4
procps
u-boot-environment
apex-isp-fast9
devmem2
glibc-locale
kbproto
可以看到在此目录下,就是vsdk提供过来的demo应用实例。
最后
以上就是灵巧大山为你收集整理的ADAS系列之一的全部内容,希望文章能够帮你解决ADAS系列之一所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复